package ch06.shizhang.shizhang02;

import java.lang.reflect.Field;

/**
 * @author 茜茜
 * @date 2024-11-22 16:08
 */
public class PersonFields {
    public static void main(String[] args) {
        try {
            // 通过反射加载一个Person实例
            Class cls = Class.forName("ch01.shili01.Person");
            //利用反射创建实例
            Object obj = cls.newInstance();
            // 获取属性
            Field name = cls.getDeclaredField("name");
            // 通过setAccessible方法，改变属性的访问范围
            name.setAccessible(true);
            System.out.println("赋值前的name：" + name.get(obj));
            // 为name属性赋值
            name.set(obj, "小朱");
            System.out.println("赋值后的name：" + name.get(obj));
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}
